home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 2010 April / PCWorld0410.iso / pluginy Firefox / 63752 / 63752.xpi / chrome / flickriver / content / flickriver.js < prev    next >
Text File  |  2010-01-24  |  3KB  |  68 lines

  1. /***************************************************************************
  2. /*
  3. /* View on Flickriver Firefox / Mozilla Add-on 
  4. /* 
  5. /* Written by Alex Sirota http://iosart.com/
  6. /*
  7. /* Copyright (c) 2010 Alex Sirota, All Rights Reserved
  8. /*
  9. /***************************************************************************/
  10. var Flickriver = {
  11.   mainButtonPressed : function(evt) {
  12.       var shouldOpenInNewTab = evt && evt.button && (evt.button == 1) ? true : false;
  13.  
  14.       var currentBrowser =  gBrowser.getBrowserForTab(gBrowser.selectedTab);
  15.       var url = currentBrowser.currentURI.spec;
  16.  
  17.       if (url.match(/http:\/\/(www.)?flickr.com\//)) { 
  18.             var newURL = url.replace(/flickr.com/, 'flickriver.com'); 
  19.             if (shouldOpenInNewTab) {
  20.                 gBrowser.selectedTab = gBrowser.addTab(newURL);
  21.             } else {
  22.                 currentBrowser.loadURI(newURL);
  23.             }
  24.       } else { 
  25.             Flickriver.showAlert('Pressing this button while on a Flick.com page will show the corresponding view on Flickriver');
  26.             if (!url.match(/http:\/\/(www.)?flickriver.com\//)) { 
  27.                 var newURL = 'http://www.flickriver.com/'; 
  28.                 gBrowser.selectedTab = gBrowser.addTab(newURL);
  29.             }
  30.       }
  31.   },
  32.  
  33.   installToolbarButton : function() {
  34.     try {
  35.         var firefoxNavBar = document.getElementById("nav-bar");
  36.         if (!firefoxNavBar) return;
  37.  
  38.         var currentSet = firefoxNavBar.currentSet;
  39.         if (currentSet.indexOf("flickriver-button") == -1) {
  40.             var set;
  41.             if (currentSet.indexOf("urlbar-container") != -1) {
  42.                 set = currentSet.replace(/urlbar-container/, "flickriver-button,urlbar-container");
  43.             } else {
  44.                 set = currentSet + ",flickriver-button";
  45.             }
  46.             firefoxNavBar.setAttribute("currentset", set);
  47.             firefoxNavBar.currentSet = set;
  48.             document.persist("nav-bar", "currentset");
  49.             try {
  50.                 BrowserToolboxCustomizeDone(true);
  51.             } catch (e) { }
  52.        }
  53.     } catch(e) { }
  54.   },
  55.  
  56.   showAlert : function(msg) {
  57.     var promptService = Components.classes["@mozilla.org/embedcomp/prompt-service;1"].getService(Components.interfaces.nsIPromptService);
  58.     promptService.alert(null, 'Flickriver', msg); 
  59.   },
  60.  
  61.   onLoad : function() {
  62.     Flickriver.installToolbarButton();
  63.   }
  64. }
  65.  
  66. window.addEventListener("load", Flickriver.onLoad, false);
  67.  
  68.